1. Field of the Invention
The present invention relates to an application layer multicast technique which allows multicast communications by application-layer processing.
2. Description of the Related Art
With the widespread use of broadband networks, attention has focused on multicast techniques that multicast streaming data such as real-time audio and video to all members of a particular multicast session group on a network. As a technique for such multicast communications, IP multicast has been known.
IP multicast is performed by looking at an IP multicast address of the destination IP address field of a packet. The IP multicast address is a set of addresses for multicast on IPv4 and IPv6. Intermediate nodes such as routers or L3switches between the sender and the receiver perform multicast routing based on the IP multicast address. In general, the routing control is performed at the application layer and the data forwarding and data copying are performed at the network layer.
To support IP multicast, however, all network systems including intermediate nodes must be multicast-enabled. Accordingly, there have been proposed several techniques of realizing multicast on the existing networks that do not support IP multicast.
For example, Japanese Patent Application Unexamined Publication No. 2001-230774 discloses a packet converter for realizing IP multicast via networks not supporting IP multicast. More specifically, in a data communication system where a server-side gateway is connected to a client-side gateway via the unicast network not supporting IP multicast, the server-side gateway converts IP multicast data to IP unicast data before sending to the unicast network. When receiving the IP unicast data from the server-side gateway, the client-side gateway converts it back to the original IP multicast data.
Japanese Patent Application Unexamined Publication No. 10-242962 discloses a multicast gateway system which receives a message as an IP multicast datagram from a sending host and makes a desired number of copies of the received message. The copies are sent as an IP unicast datagram to a plurality of registered receiving hosts that do not support IP multicast.
As another solution, application layer multicast (ALM) has been proposed. ALM performs routing control and data copying at the application layer and performs the data forwarding based on an unicast address. Accordingly, ALM advantageously uses an existing unicast IP network at the network layer.
Referring to FIG. 1, an intermediate node has the following functions: routing control for controlling a multicast tree; and data copying for copying multicast data to be transferred to downstream nodes. The data copying is preferably performed at high speeds so as to avoid occurrence of delays in transferring real-time streaming data such as moving images.
However, the conventional application layer multicast system performs the data copying on the CPU of a work station or personal computer. Accordingly, it is difficult to further increase the data copying speed, compared with the case of using a dedicated hardware circuit such as ASIC (Application specific Integrated Circuit).
In addition, in the case where both the routing control and data copying functions are working on the same CPU, the load of data copying adversely affects the routing control processing, which may cause the routing control not to operate normally.